<?php 
require_once '_header.php'; 
require_once 'funciones/cargaDatos.php';
require_once 'funciones/utiles.php';
?>

<div class="col_12">
    <?php if(isset($_GET['ok']) && $_GET['ok'] == 1) { ?>
    <div class="notice success">Datos Ingresados. Las ventas del d&iacute;a fueron: <strong>$<?php echo floatval($_GET["ventas"]); ?></strong> </div>
    <?php    } ?>
    <a href="descargarTemplate.php" class="button green"><span class="icon medium white" data-icon="Y"></span> Descargar modelo Excel </a>
    <form name="frmload"  method="post" action="importarDatos.php" enctype="multipart/form-data">
        <fieldset>
            <legend>Carga de archivos </legend>
            <input type="file" name="diario" />       <input type="submit" value="Subir" class="pink" />
        </fieldset>
    </form>
</div>
<?php
if ($_FILES['diario']['name'] != '') {
    ini_set('display_errors', 1);
    error_reporting(E_ALL);
    require_once 'lib/PHPExcel/Classes/PHPExcel/IOFactory.php';
    require_once 'lib/PHPExcel/Classes/PHPExcel/Style/NumberFormat.php';

    // array donde se guardará la data importada
    $arrayData = array();

 
    $name = $_FILES['diario']['name'];
    $tname = $_FILES['diario']['tmp_name'];
    $type = $_FILES['diario']['type'];

//            $name = "23-ENERO.xls";
//            $tname = "23-ENERO.xls";
//            $type = "application/vnd.ms-excel";

    $ext = getExtension($type);
    $xlsx = 'Excel2007';
    $xls = 'Excel5';

    //creando el lector
    $objReader = PHPExcel_IOFactory::createReader($$ext);

    //cargamos el archivo
    $objPHPExcel = $objReader->load($tname);

    $dim = $objPHPExcel->getActiveSheet()->calculateWorksheetDimension();

    // list coloca en array $start y $end
    list($start, $end) = explode(':', $dim);

    if (!preg_match('#([A-Z]+)([0-9]+)#', $start, $rslt)) {
        return false;
    }
    list($start, $start_h, $start_v) = $rslt;
    if (!preg_match('#([A-Z]+)([0-9]+)#', $end, $rslt)) {
        return false;
    }


    list($end, $end_h, $end_v) = $rslt;
    //hardcodeado xq no funca el list de arriba, tira BA, debe ser x las celdas bloqueadas o algo así
    $end_h = 'D';
    
    //empieza  lectura vertical
    $inicioGastos = false;
    $finGastos = false;
    $rowTitulosGastos = 0;

    $inicioCompras = false;
    $finCompras = false;
    $rowTitulosCompras = 0;

    for ($v = $start_v; $v <= $end_v; $v++) {
        //inciailizo y limpio las variables cada vez q arranco a recorrer las columnas de una nueva fila,
        //es decir, empiezo a recorrer la información de un nuevo gasto/compra
        $tipo = '';
        $monto = 0;
        $observacion = '';

        //empieza lectura horizontal
        for ($h = $start_h; ord($h) <= ord($end_h); pp($h)) {
            $cellValue = get_cell($h . $v, $objPHPExcel);
            armarArrayData($cellValue, $h, $v, $objPHPExcel);

            //me fijo si estoy en la fila donde se inician los gastos
            if (strtolower($cellValue) == 'gastos') {
                //prendo el flag
                $inicioGastos = true;
                //inicializo el array
                $arrayData["GASTOS"] = array();
                //seteo la variable que me guarda la fila donde están los titulos de gastos (descripcion, monto, obs)
                $rowTitulosGastos = $v + 1;
            }

            if (strtolower($cellValue) == 'compras') {
                //apago los flags de gastos, porque ya terminaron las gastos y arrancan las compras
                $inicioGastos = false;
                $finGastos = true;

                //prendo los flags de compras
                $inicioCompras = true;
                $arrayData["COMPRAS"] = array();
                $rowTitulosCompras = $v + 1;
            }

            //si ya pasé la fila que dice "gastos"
            //Y (si una vez que pasé la fila que dice gastos)no se terminaron los gastos
            //Y si ya pasé la fila que tiene los títulos
            if ($inicioGastos && !$finGastos && $v > $rowTitulosGastos) {
                //Recorro la información de cada gasto
                // en la columna A, está el tipo de gasto
                if (strtoupper($h) == 'A') {
                    $tipo = $cellValue;
                }
                
                // en la columna B, está el monto
                if (strtoupper($h) == 'C') {
                    $monto = $cellValue;
                }
                // en la columna C, está la observacion
                if (strtoupper($h) == 'D') {
                    $observacion = $cellValue;
                }
            }

            if ($inicioCompras && !$finCompras && $v > $rowTitulosCompras) {
                if (strtoupper($h) == 'A') {
                    $tipo = $cellValue;
                }
                if (strtoupper($h) == 'C' && intval($tipo) > 0) {
                    $monto = $cellValue;
                }
                if (strtoupper($h) == 'D') {
                    $observacion = $cellValue;
                }
            }
        }
        if ($inicioGastos && !$finGastos && $v > $rowTitulosGastos) {
            if (!empty($tipo)) {
                setGastos($tipo, $monto, $observacion);
            }
        }

        if ($inicioCompras && !$finCompras && $v > $rowTitulosCompras) {
            if (!empty($tipo)) {
                setCompras($tipo, $monto, $observacion);
            }
        }
    }

    require_once 'process.php';
}

require_once '_footer.php';
